package com.sdhs.system.domain.dto;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.sdhs.common.annotation.Excel;
import com.sdhs.common.core.domain.BaseEntity;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 消息对象 
 *
 * @author mz
 * @date 2023-09-04
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
public class MessageInfoDTO extends BaseEntity {

    private static final long serialVersionUID=1L;

    /** $column.columnComment */
    private Long id;

    /** 消息标题 */
    @Excel(name = "消息标题")
    private String title;

    /** 消息内容 */
    @Excel(name = "消息内容")
    private String content;

    /** 发送人 */
    @Excel(name = "发送人")
    private String senderNickName;

    /** 发送人ID */
    @Excel(name = "发送人ID")
    private String senderUserName;

    /** 接受人 */
    @Excel(name = "接受人")
    private String receiverNickName;

    /** 发送时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "发送时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date sendTime;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 接收时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "接收时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date receiveTime;

    /** 部门id */
    @Excel(name = "部门code")
    private String deptCode;

    /** 部门名称 */
    @Excel(name = "部门名称")
    private String deptName;

    /** 接受人id */
    @Excel(name = "接受人账号")
    private String receiverUserName;

    /** 接收方的部门名称 */
    @Excel(name = "接收方的部门名称")
    private String receiverDeptName;

    /** 接收方的部门id */
    @Excel(name = "接收方的部门id")
    private String receiverDeptCode;

    /** 接收方的公司id */
    @Excel(name = "接收方的公司id")
    private String receiverCompanyCode;


    /** 公司id */
    @Excel(name = "公司id")
    private String companyCode;

    /** 企业微信消息id */
    @Excel(name = "企业微信消息id")
    private String msgId;

    /** 通知id */
    @Excel(name = "通知id")
    private String issueId;

    /** 业务单据ID */
    @Excel(name = "业务单据ID")
    private Long taskId;

    /** 类型 1消息 */
    @Excel(name = "类型")
    private String type;

    /** 删除标识 */
    private String delFlag;

    /** 版本号 */
    @Excel(name = "版本号")
    private Long version;
    /**
     * 接收人ids
     */
    private List<String> receiverIdList;

}
